<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // function fn1 (){}
        // async function fn2(){}
        // console.log(fn1());//undifend
        // console.log(fn2());//Promise {<fulfilled>: undefined}

        //     // 当这个async函数执行返回是一个Promise对象

        function fn1 (){}
        async function fn2(){}
        console.log(fn1());//undefined
        console.log(fn2());//Promise{<fulfilled:undefiend>}
        async function async1(){
            // 一般能Promise对象的状态和结果分三种行为；
            // 返回一个非Promise的值，那么此时Promise的状态为成功状态，结果为返回的值

            // 返回一个Promise的值，那么此时的Promise的状态为失败状态，结果为返回Promise对象的状态和结果

            // 抛出错误，和异常情况

            return new Promise((resolve,reject)=>{
                reject(23)
            });
        }
        let p1 = async1();
        p1.then(
            (res)=>{
                console.log('p1成功状态'+res);
            },
            (res)=>{
                console.log('p1失败状态'+res);
            }
        )
    </script>
</body>
</html>